'use strict';
const db = uniCloud.database();

/**
 * 云函数：更新用户头像
 * @param {Object} event - 请求参数
 * @param {string} event.user_id - 用户ID
 * @param {string} event.avatar - 头像文件ID
 * @returns {Object} - 更新结果
 */
exports.main = async (event, context) => {
  const { user_id, avatar } = event;

  // 参数校验
  if (!user_id || !avatar) {
    return { code: -1, msg: '参数缺失' };
  }

  try {
    const userCollection = db.collection('users');

    // 验证用户是否存在
    const userRes = await userCollection.doc(user_id).get();
    if (!userRes.data.length) {
      return { code: -1, msg: '用户不存在' };
    }

    // 更新头像
    await userCollection.doc(user_id).update({
      avatar,
      updated_at: Date.now()
    });

    return {
      code: 0,
      msg: '头像更新成功'
    };
  } catch (e) {
    console.error('更新头像失败:', e);
    return { code: -1, msg: '更新头像失败' };
  }
};